package com.rzy.r_hash.f;

import java.util.concurrent.ConcurrentHashMap;

/**
 * @author gao
 * @time 2020/05/23 09:36:34
 * jdk1.8 ConcurrentHashMap源码分析
 *
 * sizeCtl
 * sizeCtl为0，代表数组还未初始化
 * sizeCtl为正数，如果数组还未初始化，那么其记录的是初始化数组时要使用的初始容量，如果数组已经初始化，那么其记录的是数组的扩容阈值
 * sizeCtl为-1，表示数组正在进行初始化
 * sizeCtl小于0，并且不是-1，表示数组正在扩容，-（1+n），表示此时有n个线程正在共同完成数组的扩容操作
 */
public class App {
    public static void main(String[] args) {
        ConcurrentHashMap map = new ConcurrentHashMap(11);
        map.put("foo", "abc");
    }
}
